package edu.neu.swc.cloud.dao;

import edu.neu.swc.cloud.domain.ConfigPro;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;


@Mapper
public interface ConfigProDao {

    /**
     * 依据设备ID寻找设备的配置信息
     * @param equ_id
     * @return
     */
    List<ConfigPro> findCPByEquId(int equ_id);

    /**
     *
     * @param configPro
     * @return
     */
     List<ConfigPro> isConfig(ConfigPro configPro);

    /**
     * 添加配置信息
     * @param configPro
     */
    void addConfig(ConfigPro configPro);

    /**
     * 在存在配置的情况下，修改配置信息
     * @param configPro
     */
    void updateConfig(ConfigPro configPro);

    /**
     * 查找配置信息
     * @param fac
     * @param equ
     * @return
     */
    int getConfigCounts(@Param("fac") int fac,
                        @Param("equ") int equ);

    /**
     * 查找配置列表
     * @param fac
     * @param equ
     * @param pageStart
     * @param pageSize
     * @return
     */
    List<ConfigPro> findConfigByQuery(@Param("fac") int fac,
                                      @Param("equ") int equ,
                                      @Param("pageStart") int pageStart,
                                      @Param("pageSize") int pageSize);
}
